训练分类器
本指南介绍如何在 OV80i 相机系统上配置并训练分类模型。当需要基于视觉特征将对象自动归类到不同类别时,请使用此流程。
视频指南
请查看本主题的实际演示:OV Auto-Defect Creator Studio
何时使用 Classification: 根据类型、尺寸、颜色或状态对零件进行分类;识别不同的产品变体;在具有多种可接受类别的质量控制场景中使用。
先决条件
- 已启用的配方,且已配置成像设置
- 模板图像和对齐已完成(或跳过)
- 已定义检测 ROI(ROI/ROIs)
- 代表要检测的每个类别的样本对象
步骤 1:访问 Classification Block
1.1 导航到 Classification
- 在面包屑菜单中单击“Classification Block”,或
- 在导航栏的下拉菜单中选择

1.2 验证前提条件
确保以下区块显示为绿色状态:
- ✅ 成像设置
- ✅ 模板与对齐(或跳过)
- ✅ 检查/检测设置

步骤 2:创建 Classification Classes
2.1 定义你的类别
- 点击“Edit” 位于 “Inspection Types” 下
- 为要检测的每个类别添加类别
2.2 为每个类别配置
对于每个类别:
- 输入类别名称: 使用描述性名称(例如“Small”、“Medium”、“Large”)
- 选择类别颜色: 为可视识别选择不同颜色
- 添加描述: 关于该类别的可选详细信息
- 点击“Save”

2.3 分类命名最佳实践
| 好名称 | 不良名称 |
|---|---|
| Small_Bolt, Medium_Bolt, Large_Bolt | Type1, Type2, Type3 |
| Red_Cap, Blue_Cap, Green_Cap | Color1, Color2, Color3 |
| Good_Part, Defective_Part | Pass, Fail |
| Screw_PhillipsHead, Screw_Flathead | A, B |
步骤 3:捕获训练图像
3.1 图像捕获过程
对于每个类别,至少捕获 5 张图像(推荐 10 张以上):
- 将代表该类别的对象放置在检测区域
- 验证对象位于 ROI(感兴趣区域)边界内
- 单击“Capture”以拍摄训练图像
- 从下拉菜单中选择相应的类别
- 单击“保存”以存储已标注的图像
- 对同一类别的不同样本重复上述操作
3.2 训练数据要求
| 类别 | 最少图像 | 推荐图像 | 备注 |
|---|---|---|---|
| 每个类别 | 5 | 10-15 | 图像越多,准确性越高 |
| 总数据集 | 15+ | 30-50+ | 在所有类别之间保持均衡 |
| 边缘情况 | 2-3 张/类别 | 5+ 张/类别 | 边界示例 |
3.3 训练图像最佳实践
可以:
- 在每个类别内使用不同的样例
- 改变对象的朝向和位置
- 覆盖良好照明条件
- 捕获边缘情况和边界示例
- 保持一致的 ROI 构图
不要:
- 重复使用完全相同的对象
- 在一个 ROI 内包含多个对象
- 在同一张图像中混合不同类别
- 使用模糊或光照不足的图像
- 捕获之间改变 ROI 大小
3.4 质量控制
在捕获每张图像后:
- 在预览中检查图像质量
- 验证正确的类别标签分配
- 使用
Delete按钮删除质量差的图像 - 如有必要,重新拍摄
第 4 步:配置训练参数
4.1 进入训练设置
- 点击
Train Classification Model按钮
4.2 选择训练模式
请根据您的需要进行选择:
| 训练模式 | 时长 | 精度 | 使用场景 |
|---|---|---|---|
| 快速 | 2-5 分钟 | 适合测试 | 初始模型验证 |
| 均衡 | 5-15 分钟 | 生产就绪 | 大多数应用场景 |
| 高精度 | 15-30 分钟 | 最高精度 | 关键应用 |

4.3 设置迭代次数
手动迭代设置:
- 低 (50-100): 快速测试,基本准确度
- 中 (200-500): 生产质量
- 高 (500+): 最高精度,训练较慢
4.4 高级设置(可选)
Batch Size:
- 较小批次: 训练更稳定,较慢
- 较大批次: 训练更快,可能不太稳定
Learning Rate:
- 较小数值: 更稳定,学习更慢
- 较大数值: 学习更快,存在不稳定风险
建议: 除非您有特定性能要求,否则使用默认设置。

第 5 步:开始训练过程
5.1 初始化训练
- 查看训练配置
- 点击
Start Training按钮 - 在训练模态对话框中监控进度
5.2 训练进度指示器
监控以下指标:
- 当前迭代: 训练循环的进度
- 训练准确度: 模型在训练数据上的表现
- 预计时间: 剩余训练时长
- 损失值: 模型误差(应随时间下降)

5.3 训练控制
训练期间可用的操作:
- 中止训练: 立即停止训练
- 提前结束: 当当前准确度达到要求时停止
- 增加训练: 如有需要,添加更多迭代
5.4 训练完成
训练在以下情况自动停止:
- 达到目标精度(通常为 95% 及以上)
- 达到最大迭代次数
- 用户手动停止训练
第 6 步:评估模型性能
6.1 查看训练结果
检查最终指标:
- 最终准确度: 生产用途应大于 >85%
- 训练时间: 记录持续时间以备将来参考
- 收敛性: 验证准确度是否已稳定
6.2 模型质量指标
| 准确率区间 | 质量等级 | 建议 |
|---|---|---|
| 95%+ | 极好 | 可投入生产 |
| 85-94% | 良好 | 适用于大多数应用 |
| 75-84% | 一般 | 考虑增加更多训练数据 |
| <75% | 较差 | 使用更多/更优质的图像重新训练 |
6.3 处理性能不佳的故障排除
| 问题 | 可能原因 | 解决方法 |
|---|---|---|
| 低准确率(<75%) | 训练数据不足 | 增加更多带标签的图像 |
| 训练没有改善 | 图像质量差 | 提升光照/对焦 |
| 类别混淆 | 外观相似的对象 | 增加更具辨识性的示例 |
| 过拟合 | 每个类别的图像数量太少 | 平衡各类别的数据集 |
第 7 步:测试分类性能
7.1 实时测试
- 点击
Live Preview以访问实时测试 - 将测试对象放置在检测区域
- 观察分类结果:
- 预测的类别名称
- 置信度百分比
- 处理时间
7.2 验证测试
系统化的验证流程:
| 测试对象 | 期望类别 | 实际结果 | 置信度 | 通过/失败 |
|---|---|---|---|---|
| 已知类别 A 的对象 | 类别 A | _____ | ____% | ☐ |
| 已知类别 B 的对象 | 类别 B | _____ | ____% | ☐ |
| 边界样本 | 类别 A 或 B | _____ | ____% | ☐ |
| 未知对象 | 低置信度 | _____ | ____% | ☐ |
7.3 性能验证
验证要点:
- Accuracy(准确度):对已知对象进行正确分类
- Confidence(置信度):对清晰示例具有较高置信度 (>80%)
- Consistency(一致性):对同一对象结果可重复
- Speed(速度):应用中可接受的处理时间
第 8 步:模型优化
8.1 如果性能不理想
迭代改进过程:
- 识别问题区域:
- 哪些类别易混淆?
- 哪些对象被错误分类?
- 置信水平是否合适?
- 添加有针对性的训练数据:
- 更多易混淆类别的示例
- 边缘情况和边界示例
- 不同照明/定位条件
- 重新训练模型:
- 使用 "Accurate" 模式以获得更好性能
- 增加迭代次数
- 监控准确度的提升
8.2 高级优化
适用于关键应用:
- Data augmentation(数据增强):使用多样化的照明和位置
- Transfer learning(迁移学习):从相似训练的模型开始
- Ensemble methods(集成方法):组合多个模型
- Regular retraining(定期重新训练):使用新生产数据进行更新
第 9 步:最终配置
9.1 保存模型
- 验证满意的性能
- 训练完成时模型会自动保存
- 记录模型版本以便文档
9.2 文档记录
记录以下细节:
- 训练日期及版本
- 每个类别的图片数量
- 使用的训练模式和迭代次数
- 最终达到的准确度
- 任何特别注意事项
9.3 备份配置
- 导出 recipe 以备份
- 如有需要,单独保存训练图像
- 记录模型参数
成功!您的分类器已就绪
您经过训练的分类模型现在可以:
- 自动将对象分类到定义的类别
- 为每个预测提供置信度分数
- 实时处理生产用图像
- 与 I/O 逻辑 集成以实现自动化决策
持续维护
定期模型更新
- 随时间监控性能
- 按需添加新的训练数据
- 定期重新训练以维持准确性
- 更新类别以适应新的产品变体
性能监控
- 在生产中跟踪准确性指标
- 识别模型性能漂移
- 基于性能下降安排重新训练
下一步
在对分类器完成训练后:
- 配置 I/O 逻辑以进行合格/不合格决策
- 在 IO Block 中设置生产工作流
- 对完整的检测系统进行端到端测试
- 部署到生产环境
常见陷阱
| 陷阱 | 影响 | 预防措施 |
|---|---|---|
| 训练数据不足 | 准确性较低 | 每个类别使用 10 张以上图像 |
| 类别不平衡 | 预测偏差 | 各类别图像数量相等 |
| 图像质量差 | 结果不一致 | 优化照明与对焦 |
| 类别过于相似 | 分类结果混淆 | 选择明显且彼此区分的类别定义 |
| 缺少验证测试 | 生产失败 | 始终对未见对象进行测试 |